Method and system for increasing scanning speed

ABSTRACT

In accordance with the present invention, a method and a system for increasing scanning speed are provided. The method comprises steps of determining a transmission rate of a transit interface, scanning an original to generate an image data, and adjusting a cycle time of the image data to change a data generated rate responsive to the transmission rate of the transit interface. The key aspect of the present invention is by adjusting the cycle time of a state machine to change the data generated rate corresponding to the transmission rate of the transit interface. Therefore, in response to the transmission rate of the transit interface, the cycle time of the state machine is adjusted to produce the data at a rate that prevents the smearing process. Thus, incorporated with the present invention, the possibility of memory buffer full is reduced leading to the reduction in the time wasting on start-stop processes and therefore the overall scanning speed is increased without requiring the increase in size of a memory buffer.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention generally relates to a method and a system for increasing scanning speed, and more particularly to a method and a system for increasing scanning speed by adjusting a cycle time of a state machine to change the data generated rate corresponding to the transmission rate of the transit interface.

[0003] 2. Description of the Prior Art

[0004] Scanners are widely applied for the ability of generating digital representation of the information comprised by an original. The digital representation typically processed on a host device such as computer, and through an I/O cable data is transmitted from the scanner to the computer. The data transmission rate from the scanner to the host device is depended on the communication protocol used between the scanner and the host device. Ideally, digital data transferred to the host device is produced at the same rate that the host device can accept it. Therefore, no memory buffer is required for accumulating data that is waiting for transfer. However, the digital data is usually produced at a rate quite different from the data reception rate of the host device. If the transmission rate is higher than the data generated rate of the scanner, the scanner can run in full speed with no possible loss of data. However, the data generated rate of a scanner is usually faster than the transmission rate of the host computer. Therefore, when the transmission rate is lower than the data generated rate, issues related to the efficiency of the scanning operation often arise in the scanning operation.

[0005] Besides optical resolution, the scanning speed is another essential functional criteria of scanners. The scanning speed is the time that the scanner sends back scanned image to the host device after the scanning work is started. If the transmission rate is slower, the image data will be accumulated in a memory buffer, and the memory buffer may finally get full after only a portion of the original is scanned. In order to prevent the loss of the image data, the scanning operation is halted when the memory buffer is full and, then resumed when the memory buffer is empty or available for storing more data again. In other words, when the memory buffer is full, a scanning module driven by a motor is stopped and moved backward for a predetermined number of steps, due to the first few step motions of the scanning module being usually quite shaky and unstable that is caused by mechanical vibrations resulting in affecting the quality of the output in that period. Then, the scanning module is forwarded from there when the data accumulated in the memory buffer is transmitted to the host device. The processes of stopping and restarting the scan are alternatively performed till the scanning operation is completed. This method of preventing the loss of image data is useful, but it may cause the scanning of an original to take a long time because the scanning is stopped and restarted repeatedly.

[0006] The procedure of moving the scanning module backward and forward or, in other words, the procedure of stopping and restarting the scanning module is so called a smearing or start-stop process. This procedure might help to solve the problem of unstable scanning module or memory buffer full but it takes time to move the scanning module backward and forward, which may reduce the overall scanning speed of the scanner. Besides the start-stop process, in order to overcome the problems associated with data transfer from the scanner to the computer due to the varying transmission rate of the computer, lots of methods have been proposed. The increase in size of the memory buffer is one of the methods. The scanning of the original is thereby not affected by the varying capability of the computer to receive data. Enlarging memory buffer is quite straight forward and easy but with some drawbacks, that is, it also increases cost and complicates the manufacture of a scanner. Moreover, it may not really solve the problem when a high-resolution scan is performed, which can generate a huge amount of image data within a very short period of time, and it is not feasible to simply increase the memory buffer size to alleviate the problem.

[0007] A scanner with fast scanning speed can shorten the time while scanning of an original, speed up and increase work efficiency. Thus, it is imperative to develop a method and a system which reduces the possibility of memory buffer being full leading to the reduction of the time wasting on start-stop processes and thereby promoting the scanning speed without requiring the increase in size of a memory buffer.

SUMMARY OF THE INVENTION

[0008] The present invention is directed to a method and a system for increasing the scanning speed. The key aspect of the present invention is by adjusting the cycle time of a state machine to change the data generated rate corresponding to the transmission rate of the transit interface. Therefore, in response to the transmission rate of the transit interface, the cycle time of the state machine is adjusted to produce the data at a rate that prevents the smearing process. Thus, incorporated with the present invention, the possibility of memory buffer full is reduced leading to the reduction in the time wasting on start-stop processes and therefore the overall scanning speed is increased without requiring the increase in size of a memory buffer.

[0009] It is another object of this invention that a method and a system for avoiding a start-stop process of the scanning mechanism are provided.

[0010] It is a further object of this invention that a method and a system for changing the data generated rate by use of adjusting the cycle time of a state machine corresponding to the transit interface are provided.

[0011] It is another further object of this invention that a method and a system for increasing scanning speed without requiring the increase in size of a memory buffer are provided.

[0012] In accordance with the present invention, a method is provided for optimizing the scanning speed of a scanning system by adjusting a cycle time of a state machine in response to a transit interface. The method comprises steps of determining a transmission rate of the transit interface, scanning an original to generate an image data, and adjusting a cycle time of the image data to change a data generated rate responsive to the transmission rate of the transit interface. The data generated rate can be any rate that reduces the data accumulation. The step of adjusting the cycle time of the image data comprises selecting a corresponding cycle time from a plurality of predetermined values according to the transmission rate. The method further comprises communicating the image data from the scanning system to a host device through the transit interface.

[0013] In another embodiment, a method of optimizing scanning speed comprises steps of determining a transmission rate of a transit interface, comparing the transmission rate with a predetermined value to obtain a result, scanning an original to generate an image data, and adjusting a cycle time of the image data to change a data generated rate according to the result. When the transmission rate is faster than the predetermined value, the cycle time of the image data is decreased to increase the data generated rate. When the transmission rate is lower than the predetermined value, the cycle time is increased to reduce the data generated rate. The method further comprises communicating the image data from the scanning system to a host device through the transit interface.

[0014] In a third embodiment, a scanning system with adjustable data generated rate comprises a plurality of transit interfaces for data communicating between the scanning system and a host device, a state machine generator for generating a plurality of corresponding cycle times responsive to the transit interfaces, and a scanning module for scanning an original to generate the data at a rate controlled by the corresponding cycle times. The transit interface can be USB1.1, USB2.0, IEEE1394, EPP, and SCSI and not limited to those. When a transit interface with different transmission rates such as USB (USB1.1, USB2.0) and IEEE1394 (1394a, 1394b) series, the state machine generator generates the corresponding cycle times according to the transmission rates.

BRIEF DESCRIPTION OF THE DRAWINGS

[0015] The foregoing aspects and many of the attendant advantages of this invention will become more readily appreciated as the same becomes better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein:

[0016]FIG. 1 is a schematic block diagram of a scanning system in accordance with the present invention;

[0017]FIGS. 2A to 2B is a schematic illustration of increasing and decreasing the clock count in one cycle in accordance with the present invention, respectively.

[0018]FIG. 3A is a flow diagram of a scanning method in accordance with one embodiment of the present invention; and

[0019]FIG. 3B is a flow diagram of a scanning method in accordance with another embodiment of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENT

[0020] Some sample embodiments of the invention will now be described in greater detail. Nevertheless, it should be noted that the present invention can be practiced in a wide range of other embodiments besides those explicitly described, and the scope of the present invention is expressly not limited except as specified in the accompanying claims.

[0021] A state machine is a logical hardware representation of a flow chart in which the transitions from one state to the succeeding state is defined to complete a task in a cycle time. For example, it is widely known in the prior art that the digital data produced by a scanner is usually generated at a fixed rate due to the implement of a state machine with a fixed cycle time, such as 10 clocks in a cycle. Therefore, the fixed data generated rate does not serve to optimize the scanning speed in response to the difference in transmission rate of a variety of transit interfaces. In other words, when the image data is generated at a rate faster than the transmission rate of a transit interface, or when a huge amount of the image data is generated within a very short time causing a memory buffer full, the start-stop process is unavoidable such that the time wasting on the start-stop process is also inevitable. In the prior arts, when the cycle time is too short incorporated with slower transmission rate, more start-stop processes are likely to occur resulting in the delay of the scanning speed. On the other hand, when the cycle time is too long, the overall scanning speed is delayed due to the increased idle time of the transit interface with a faster transmission rate. Therefore, the optimization of the scanning speed is out of question. In view of the drawbacks depicted in the prior art, the present invention provides a method and a system for adjusting the cycle time of the state machine corresponding to the transit interface to generate the image data at a rate for avoiding the start-stop processes and optimizing the scanning speed.

[0022] One aspect of the present invention is that due to the difference in transmission rate, the data is generated at a rate corresponding to the transmission rate of the transit interface to reduce the possibility of start-stop processes, that is, to prevent a memory buffer full. Other aspect of the present invention is the approach of balancing of the cycle time of the state machine and the data generated rate, thus, the data generated rate is changed by means of adjusting the cycle time of the state machine to optimize the overall scanning speed.

[0023] Referring to FIG. 1, in one embodiment, a schematic block diagram of a scanning system 100 is shown. The scanning system 100 comprises a scanning module 110, a state machine generator 120, and a plurality of transit interfaces 130 such as transit interfaces 130 a, 130 b, and 130 c. The scanning module 110 including a detector 140, an analog to digital converter (ADC) 150, an image processor 160, and a data memory buffer 170, is for scanning an original to generate and image data. The transit interface 130 is for the data communication from a data generator to a host device, in the embodiment, transferring the image data from the scanning system 100 to a computer. The transit interface can be any commercial products with any communication protocols and transmission rates such as USB1.1, USB2.0, IEEE1394, EPP, and SCSI and not limited to those. The state machine generator 120 is a logical hardware representation of a flow chart, which generates corresponding cycle times to change a data generated rate according to the transit interfaces. The adjustment of the cycle time makes changes the data generated rate to prevent the memory buffer 170 full. In short, the state machine generator 120 has corresponding cycle times according to the transit interface or the transmission rate of the transit interface. Therefore, the scanning system 110 generates the image data and under the control of the corresponding cycle time to change the data generated rate due to the change of the cycle time of the image.

[0024] Additionally, the cycle time of the state machine can be determined by selecting from a plurality of built-in cycle times of the state machine according to the transmission rate. In other words, every transit interface has a corresponding cycle time of the state machine built in the scanning system. When the transit interface is determined, the scanning module 110 is controlled by the corresponding cycle time of the state machine to generate the image data. For example, if the transit interface has a slower transmission rate such as USB1.1, the cycle time of the state machine is increased, that is a cycle time of 10 clocks in one cycle can be increased to a cycle time with 12 clocks in one cycle as shown in FIG. 2A. On the other hand, when the transit interface with a faster transmission rate such as IEEE1394, the cycle time of the state machine is decreased, that is a cycle time of 10 clocks in one cycle can be reduced to a cycle time with 8 clocks in one cycle to reduce the idle time, as shown in FIG. 2B. Thus, the possibility of the memory buffer full is reduced and the start-stop process is diminished resulting in the optimization of the scanning speed.

[0025] In accordance with the present invention, a method for adjusting a cycle time of a state machine according to the transit interface is also provided, which increases the scanning speed. Referring to FIG. 3A, a flow chart of implementing the present invention by the scanning system is illustrated. The method starts from step 210, the transit interface used in the scanning process is determined such as the transit interface 130 a is implemented. It is noted that when the transit interface is determined, the transmission rate can also be determined. For example the transit interface can be a USB 2.0 with a transmission rate of 480 Mbit/sec or running at a rate of 12 Mbit/sec, or a USB1.1 with a transmission rate of 12 Mbit/sec. The transmission rate of the transit interface can be determined by a signal sent to the scanning system in the process of initializing the scanning system or by a firmware prior to starting a scanning operation.

[0026] In the step of 220, an original is scanned to generate an image data. In the step of 230, by changing state machine' cycle time, a cycle time of the image data is adjusted to change a data generated rate according to the transit interface. That is, the scanning module scans the original to generate the image data and under the control of the cycle time of the state machine the data generated rate is changed to prevent the memory buffer full. The cycle time of the state machine can be determined by changing the clock count in one cycle responsive to the transmission rate of the transit interface. For example, the USB transit interface can have three transmission rates, high-speed of 480 Mbit/sec, full-speed of 12 Mbit/sec, and low-speed which is seldom used for data transfer. The cycle time (or the clock count in one cycle) of the state machine is determined when the transmission rate is determined. If the transit interface has a high transmission rate such as IEEE 1394, EPP, and SCSI, the data is generated at the shortest cycle time to complete a task required to reduce the idle time due to the transmission rate is greatly faster than the data generated rate in the present technology. When the transit interface has a low transmission rate such as USB1.1, the data generated rate is operated at a longer cycle time to prevent the memory buffer full.

[0027] Additionally, FIG. 3B shows a flow diagram of increasing the scanning speed in accordance with another embodiment. The method starts from the same step of 210, the transit interface used in the scanning process is determined such as the transit interface 130 a is implemented. In the step of 240, by comparing the transmission rate of the transit interface with a predetermined transmission rate, a result is obtained. Then, an original is scanned to generate an image data in the step of 250. According to the result obtained in 240, the determination of adjusting a cycle of a state machine is made to adjust the cycle time of the image data to change a data generated rate in the step 260. In more details, when the transmission rate of the transit interface is faster than the predetermined transmission rate, the cycle time of the state machine is decreased to increase the data generated rate. On the other hand, if the transmission rate of the transit interface is lower than the predetermined transmission rate, the cycle time of the state machine is increased to reduce the data generated rate.

[0028] For example, in accordance with the present invention, in the scanning procedure, the transmission rate of a transit interface 130 such as USB1.1 is first determined. When an optical detector 140 such as charge coupled device (CCD) generates analog image data in the scanning of the original, the analog to digital converter (ADC) 150 is for converting the analog image data to digital data. Then, the image processor 160 of the scanning module 110 generates the image data under the control of a corresponding cycle time to change a data generated rate. The corresponding cycle time can be selected from a plurality of built-in cycle times according to the transmission rate of the transit interface. Therefore, the approach of balancing the transmission rate and the data generated rate leads to the change of the data generated rate preventing the memory buffer 170 full resulting in the reduction in the time wasting on the start-stop process. Thus, the scanning speed is increased without the requirement of increasing the memory buffer.

[0029] Although specific embodiments have been illustrated and described, it will be obvious to those skilled in the art that various modifications may be made without departing from what is intended to be limited solely by the appended claims. 

What is claimed is:
 1. A method for optimizing scanning speed of a scanning system, said method comprising: determining a plurality of transmission rates of a plurality of transit interfaces; scanning an original to generate an image data; and adjusting a cycle time of the image data to change a data generated rate responsive to one of said transmission rates of said transit interfaces.
 2. The method according to claim 1, further comprising communicating said image data from said scanning system to a host device through said transit interface.
 3. The method according to claim 1, wherein said step of determining said transmission rates comprises determining said transmission rates by a firmware.
 4. The method according to claim 1, wherein said transit interfaces are selected from the group of a USB1.1, a USB2.0, an IEEE1394, an EPP, and a SCSI.
 5. The method according to claim 1, wherein said data generated rate is any rate reducing accumulation of said data.
 6. The method according to claim 1, wherein said step of adjusting said cycle time of said image data comprises adjusting a clock count comprised in one cycle according to said transmission rate.
 7. The method according to claim 1, wherein said step of adjusting said cycle time of said image data comprises selecting a corresponding cycle time from a plurality of predetermined cycle times.
 8. A method of promoting scanning speed of a scanning system, said method comprising: determining a plurality of transmission rates of a plurality of transit interfaces; comparing one of said transmission rates with a predetermined value to obtain a result; scanning an original to generate an image data; and adjusting a cycle time of said image data to change a data generated rate according to said result.
 9. The method according to claim 8, further comprising communicating said image data from said scanning system to a host device through said transit interfaces.
 10. The method according to claim 8, wherein said step of determining said transmission rates comprises determining said transmission rates by a firmware.
 11. The method according to claim 8, wherein said transit interfaces are selected from the group of USB1.1, USB2.0, IEEE1394, EPP, and SCSI.
 12. The method according to claim 8, wherein said step of adjusting said cycle time of said image data comprises decreasing said cycle time of said image data to increase said data generated rate when said transmission rates is faster than said predetermined value.
 13. The method according to claim 8, wherein said step of adjusting said cycle time of said image data comprises increasing said cycle time of said image data to reduce said data generated rate when said transmission rates is lower than said predetermined value.
 14. The method according to claim 8, wherein said step of adjusting said cycle time of said image data comprises adjusting a clock count comprised in one cycle.
 15. A scanning system with adjustable data generated rate; said scanning system comprising: a plurality of transit interfaces for communicating a data between said scanning system and a host device; a state machine generator for generating a plurality of corresponding cycle times of a state machine responsive to said transit interfaces; and a scanning module for scanning an original to generate said data at a rate controlled by said corresponding cycle times of said state machine.
 16. The system according to claim 15, wherein said transit interface is selected from the group of USB1.1, USB2.0, IEEE1394, EPP, and SCSI.
 17. The system according to claim 15, wherein when same said transit interfaces with a plurality of transmission rates, said state machine generator generates said corresponding cycle times according to said transmission rates.
 18. The system according to claim 17, wherein said one of said transit interfaces is selected from the group of USB, and IEEE1394 transit interface. 